package cn.schoolwow.quickflow.listener;

import cn.schoolwow.quickflow.domain.FlowContext;

public interface TryCatchFinallyHandler {
    /**
     * 开始事件try事件处理
     */
    void handleTryStart(FlowContext flowContext) throws Exception;

    /**
     * 结束事件try事件处理
     */
    void handleTryEnd(FlowContext flowContext) throws Exception;

    /**
     * 异常事件处理
     */
    void handleException(FlowContext flowContext, Exception e);

    /**
     * finally事件处理
     */
    void handleFinally(FlowContext flowContext);

    /**
     * 事件处理器名称
     */
    String name();
}
